Systems and methods of operating media playback systems having multiple voice assistant services

ABSTRACT

Systems and methods for managing multiple voice assistants are disclosed. Audio input is received via one or more microphones of a playback device. A first activation word is detected in the audio input via the playback device. After detecting the first activation word, the playback device transmits a voice utterance of the audio input to a first voice assistant service (VAS). The playback device receives, from the first VAS, first content to be played back via the playback device. The playback device also receives, from a second VAS, second content to be played back via the playback device. The playback device plays back the first content while suppressing the second content. Such suppression can include delaying or canceling playback of the second content.

FIELD OF THE DISCLOSURE

The present disclosure is related to consumer goods and, moreparticularly, to methods, systems, products, features, services, andother elements directed to media playback or some aspect thereof.

BACKGROUND

Options for accessing and listening to digital audio in an out-loudsetting were limited until in 2002, when SONOS, Inc. began developmentof a new type of playback system. Sonos then filed one of its firstpatent applications in 2003, entitled “Method for Synchronizing AudioPlayback between Multiple Networked Devices,” and began offering itsfirst media playback systems for sale in 2005. The Sonos Wireless HomeSound System enables people to experience music from many sources viaone or more networked playback devices. Through a software controlapplication installed on a controller (e.g., smartphone, tablet,computer, voice input device), one can play what she wants in any roomhaving a networked playback device. Media content (e.g., songs,podcasts, video sound) can be streamed to playback devices such thateach room with a playback device can play back corresponding differentmedia content. In addition, rooms can be grouped together forsynchronous playback of the same media content, and/or the same mediacontent can be heard in all rooms synchronously.

BRIEF DESCRIPTION OF THE DRAWINGS

Features, aspects, and advantages of the presently disclosed technologymay be better understood with regard to the following description,appended claims, and accompanying drawings, as listed below. A personskilled in the relevant art will understand that the features shown inthe drawings are for purposes of illustrations, and variations,including different and/or additional features and arrangements thereof,are possible.

FIG. 1A is a partial cutaway view of an environment having a mediaplayback system configured in accordance with aspects of the disclosedtechnology.

FIG. 1B is a schematic diagram of the media playback system of FIG. 1Aand one or more networks.

FIG. 1C is a block diagram of a playback device.

FIG. 1D is a block diagram of a playback device.

FIG. 1E is a block diagram of a network microphone device.

FIG. 1F is a block diagram of a network microphone device.

FIG. 1G is a block diagram of a playback device.

FIG. 1H is a partially schematic diagram of a control device.

FIGS. 1I through 1L are schematic diagrams of corresponding mediaplayback system zones.

FIG. 1M is a schematic diagram of media playback system areas.

FIG. 2A is a front isometric view of a playback device configured inaccordance with aspects of the disclosed technology.

FIG. 2B is a front isometric view of the playback device of FIG. 3Awithout a grille.

FIG. 2C is an exploded view of the playback device of FIG. 2A.

FIG. 3A is a front view of a network microphone device configured inaccordance with aspects of the disclosed technology.

FIG. 3B is a side isometric view of the network microphone device ofFIG. 3A.

FIG. 3C is an exploded view of the network microphone device of FIGS. 3Aand 3B.

FIG. 3D is an enlarged view of a portion of FIG. 3B.

FIG. 3E is a block diagram of the network microphone device of FIGS.3A-3D

FIG. 3F is a schematic diagram of an example voice input.

FIGS. 4A-4D are schematic diagrams of a control device in various stagesof operation in accordance with aspects of the disclosed technology.

FIG. 5 is front view of a control device.

FIG. 6 is a message flow diagram of a media playback system.

FIG. 7 is an example message flow diagram between a media playbacksystem and first and second voice assistant services.

FIG. 8 is a flow diagram of a method for managing content from first andsecond voice assistant services.

FIG. 9 is a flow diagram of a method for managing activation-worddetection during playback of content from a voice assistant service.

The drawings are for the purpose of illustrating example embodiments,but those of ordinary skill in the art will understand that thetechnology disclosed herein is not limited to the arrangements and/orinstrumentality shown in the drawings.

DETAILED DESCRIPTION I. Overview

Voice control can be beneficial for a “smart” home having smartappliances and related devices, such as wireless illumination devices,home-automation devices (e.g., thermostats, door locks, etc.), and audioplayback devices. In some implementations, networked microphone devices(which may be a component of a playback device) may be used to controlsmart home devices. A network microphone device will typically include amicrophone for receiving voice inputs. The network microphone device canforward voice inputs to a voice assistant service (VAS), such asAMAZON's ALEXA®, APPLE's SIRI®, MICROSOFT's CORTANA®, GOOGLE'sAssistant, etc. A VAS may be a remote service implemented by cloudservers to process voice inputs. A VAS may process a voice input todetermine an intent of the voice input. Based on the response, thenetwork microphone device may cause one or more smart devices to performan action. For example, the network microphone device may instruct anillumination device to turn on/off based on the response to theinstruction from the VAS.

A voice input detected by a network microphone device will typicallyinclude an activation word followed by an utterance containing a userrequest. The activation word is typically a predetermined word or phraseused to “wake up” and invoke the VAS for interpreting the intent of thevoice input. For instance, in querying AMAZON's ALEXA, a user mightspeak the activation word “Alexa.” Other examples include “Ok, Google”for invoking GOOGLE's Assistant, and “Hey, Siri” for invoking APPLE'sSIRI, or “Hey, Sonos” for a VAS offered by SONOS. In variousembodiments, an activation word may also be referred to as, e.g., awake-, trigger-, wakeup-word or phrase, and may take the form of anysuitable word; combination of words, such as phrases; and/or audio cuesindicating that the network microphone device and/or an associated VASis to invoke an action.

It can be difficult to manage the association between various playbackdevices with two or more corresponding VASes. For example, although auser may wish to utilize multiple VASes within her home, a responsereceived from one VAS may interrupt a response or other content receivedfrom a second VAS. Such interruptions can be synchronous, for examplewhen a response from a second VAS interrupts a response from a firstVAS. Additionally, such interruptions can be asynchronous, for examplewhen a response from a second VAS interrupts a pre-scheduled event(e.g., an alarm) from the first VAS.

The systems and methods detailed herein address the above-mentionedchallenges of managing associations between one or more playback devicesand two or more VASes. In particular, systems and methods are providedfor managing the communications and output between a playback device andtwo or more VASes to enhance the user experience. Although severalexamples are provided below with respect to managing interactions withtwo VASes, in various embodiments there may be additional VASes (e.g.,three, four, five, six, or more VASes).

As described in more detail below, in some instances a playback devicecan manage multiple VASes by arbitrating playback of content receivedfrom different VASes content. For example, a playback device can detectan activation word in audio input, and then transmit a voice utteranceof the audio input to a first VAS. The first VAS may then respond withcontent (e.g., a text-to-speech response) to be played back via theplayback device, after which the playback device may then play back thecontent. At any point in this process, the playback device mayconcurrently receive second content from a second VAS, for example apre-scheduled alarm, a user broadcast, a text-to-speech response, or anyother content. In response to receiving this second content, theplayback device can dynamically determine how to handle playback. As oneoption, the playback device may suppress the second content from thesecond VAS to avoid unduly interrupting the response played back fromthe first VAS. Such suppression can take the form of delaying playbackof the second content or canceling playback of the second content.Alternatively, the playback device may allow the second content tointerrupt the first content, for example by suppressing playback of thefirst content while allowing the second content to be played back. Insome embodiments, the playback device determines which content to playand which to suppress based on the characteristics of the respectivecontent—for example allowing a scheduled alarm from a second VAS tointerrupt a podcast from a first VAS, but suppressing a user broadcastfrom a second VAS during output of a text-to-speech response from afirst VAS.

As described in more detail below, in some instances a playback devicecan manage multiple VASes by arbitrating activation-word detectionassociated with different VASes. For example, the playback device mayselectively disable activation-word detection for a second VAS while auser is actively engaging with a first VAS. This reduces the risk of thesecond VAS erroneously interrupting the user's dialogue with the firstVAS upon detecting its own activation word. This also preserves userprivacy by eliminating the possibility of a user's voice input intendedfor one VAS being transmitted to a different VAS. Once the user hasconcluded her dialogue session with the first VAS, the playback devicemay re-enable activation-word detection for the second VAS. These andother rules allow playback devices to manage playback of content frommultiple different VASes without compromising the user experience.

While some examples described herein may refer to functions performed bygiven actors such as “users,” “listeners,” and/or other entities, itshould be understood that this is for purposes of explanation only. Theclaims should not be interpreted to require action by any such exampleactor unless explicitly required by the language of the claimsthemselves.

In the Figures, identical reference numbers identify generally similar,and/or identical, elements. To facilitate the discussion of anyparticular element, the most significant digit or digits of a referencenumber refers to the Figure in which that element is first introduced.For example, element 110 a is first introduced and discussed withreference to FIG. 1A. Many of the details, dimensions, angles and otherfeatures shown in the Figures are merely illustrative of particularembodiments of the disclosed technology. Accordingly, other embodimentscan have other details, dimensions, angles and features withoutdeparting from the spirit or scope of the disclosure. In addition, thoseof ordinary skill in the art will appreciate that further embodiments ofthe various disclosed technologies can be practiced without several ofthe details described below.

II. Suitable Operating Environment

FIG. 1A is a partial cutaway view of a media playback system 100distributed in an environment 101 (e.g., a house). The media playbacksystem 100 comprises one or more playback devices 110 (identifiedindividually as playback devices 110 a-n), one or more networkmicrophone devices (“NMDs”), 120 (identified individually as NMDs 120a-c), and one or more control devices 130 (identified individually ascontrol devices 130 a and 130 b).

As used herein the term “playback device” can generally refer to anetwork device configured to receive, process, and output data of amedia playback system. For example, a playback device can be a networkdevice that receives and processes audio content. In some embodiments, aplayback device includes one or more transducers or speakers powered byone or more amplifiers. In other embodiments, however, a playback deviceincludes one of (or neither of) the speaker and the amplifier. Forinstance, a playback device can comprise one or more amplifiersconfigured to drive one or more speakers external to the playback devicevia a corresponding wire or cable.

Moreover, as used herein the term NMD (i.e., a “network microphonedevice”) can generally refer to a network device that is configured foraudio detection. In some embodiments, an NMD is a stand-alone deviceconfigured primarily for audio detection. In other embodiments, an NMDis incorporated into a playback device (or vice versa).

The term “control device” can generally refer to a network deviceconfigured to perform functions relevant to facilitating user access,control, and/or configuration of the media playback system 100.

Each of the playback devices 110 is configured to receive audio signalsor data from one or more media sources (e.g., one or more remoteservers, one or more local devices) and play back the received audiosignals or data as sound. The one or more NMDs 120 are configured toreceive spoken word commands, and the one or more control devices 130are configured to receive user input. In response to the received spokenword commands and/or user input, the media playback system 100 can playback audio via one or more of the playback devices 110. In certainembodiments, the playback devices 110 are configured to commenceplayback of media content in response to a trigger. For instance, one ormore of the playback devices 110 can be configured to play back amorning playlist upon detection of an associated trigger condition(e.g., presence of a user in a kitchen, detection of a coffee machineoperation). In some embodiments, for example, the media playback system100 is configured to play back audio from a first playback device (e.g.,the playback device 100 a) in synchrony with a second playback device(e.g., the playback device 100 b). Interactions between the playbackdevices 110, NMDs 120, and/or control devices 130 of the media playbacksystem 100 configured in accordance with the various embodiments of thedisclosure are described in greater detail below with respect to FIGS.1B-6.

In the illustrated embodiment of FIG. 1A, the environment 101 comprisesa household having several rooms, spaces, and/or playback zones,including (clockwise from upper left) a master bathroom 101 a, a masterbedroom 101 b, a second bedroom 101 c, a family room or den 101 d, anoffice 101 e, a living room 101 f, a dining room 101 g, a kitchen 101 h,and an outdoor patio 101 i. While certain embodiments and examples aredescribed below in the context of a home environment, the technologiesdescribed herein may be implemented in other types of environments. Insome embodiments, for example, the media playback system 100 can beimplemented in one or more commercial settings (e.g., a restaurant,mall, airport, hotel, a retail or other store), one or more vehicles(e.g., a sports utility vehicle, bus, car, a ship, a boat, an airplane),multiple environments (e.g., a combination of home and vehicleenvironments), and/or another suitable environment where multi-zoneaudio may be desirable.

The media playback system 100 can comprise one or more playback zones,some of which may correspond to the rooms in the environment 101. Themedia playback system 100 can be established with one or more playbackzones, after which additional zones may be added, or removed to form,for example, the configuration shown in FIG. 1A. Each zone may be givena name according to a different room or space such as the office 101 e,master bathroom 101 a, master bedroom 101 b, the second bedroom 101 c,kitchen 101 h, dining room 101 g, living room 101 f, and/or the balcony101 i. In some aspects, a single playback zone may include multiplerooms or spaces. In certain aspects, a single room or space may includemultiple playback zones.

In the illustrated embodiment of FIG. 1A, the master bathroom 101 a, thesecond bedroom 101 c, the office 101 e, the living room 101 f, thedining room 101 g, the kitchen 101 h, and the outdoor patio 101 i eachinclude one playback device 110, and the master bedroom 101 b and theden 101 d include a plurality of playback devices 110. In the masterbedroom 101 b, the playback devices 110 l and 110 m may be configured,for example, to play back audio content in synchrony as individual onesof playback devices 110, as a bonded playback zone, as a consolidatedplayback device, and/or any combination thereof. Similarly, in the den101 d, the playback devices 110 h-j can be configured, for instance, toplay back audio content in synchrony as individual ones of playbackdevices 110, as one or more bonded playback devices, and/or as one ormore consolidated playback devices. Additional details regarding bondedand consolidated playback devices are described below with respect toFIGS. 1B, 1E, and 1I-1M.

In some aspects, one or more of the playback zones in the environment101 may each be playing different audio content. For instance, a usermay be grilling on the patio 101 i and listening to hip hop music beingplayed by the playback device 110 c while another user is preparing foodin the kitchen 101 h and listening to classical music played by theplayback device 110 b. In another example, a playback zone may play thesame audio content in synchrony with another playback zone. Forinstance, the user may be in the office 101 e listening to the playbackdevice 110 f playing back the same hip hop music being played back byplayback device 110 c on the patio 101 i. In some aspects, the playbackdevices 110 c and 110 f play back the hip hop music in synchrony suchthat the user perceives that the audio content is being playedseamlessly (or at least substantially seamlessly) while moving betweendifferent playback zones. Additional details regarding audio playbacksynchronization among playback devices and/or zones can be found, forexample, in U.S. Pat. No. 8,234,395 entitled, “System and method forsynchronizing operations among a plurality of independently clockeddigital data processing devices,” which is incorporated herein byreference in its entirety.

a. Suitable Media Playback System

FIG. 1B is a schematic diagram of the media playback system 100 and acloud network 102. For ease of illustration, certain devices of themedia playback system 100 and the cloud network 102 are omitted fromFIG. 1B. The various playback, network microphone, and controllerdevices 110, 120, 130 and/or other network devices of the MPS 100 may becoupled to one another via point-to-point connections and/or over otherconnections, which may be wired and/or wireless, via a LAN 111 includinga network router 109. For example, the playback device 110 j in the Den101 d (FIG. 1A), which may be designated as the “Left” device, may havea point-to-point connection with the playback device 110 k, which isalso in the Den 101 d and may be designated as the “Right” device. In arelated embodiment, the Left playback device 110 j may communicate withother network devices, such as the playback device 110 h, which may bedesignated as the “Front” device, via a point-to-point connection and/orother connections via the LAN 111.

In addition to the playback, network microphone, and controller devices110, 120, and 130, the home environment 101 may include additionaland/or other computing devices, including local network devices, such asone or more smart illumination devices 108 (FIG. 1B), a smart thermostat111, and a local computing device. In embodiments described below, oneor more of the various playback devices 110 may be configured asportable playback devices, while others may be configured as stationaryplayback devices. For example, the headphones 110 o (FIG. 1B) are aportable playback device, while the playback device 110 e on thebookcase may be a stationary device. As another example, the playbackdevice 110 c on the Patio may be a battery-powered device, which mayallow it to be transported to various areas within the environment 101,and outside of the environment 101, when it is not plugged in to a walloutlet or the like.

As further shown in FIG. 1B, the MPS 100 may be coupled to one or moreremote computing devices 106 via a wide area network (“WAN”) 102. Insome embodiments, each remote computing device 106 may take the form ofone or more cloud servers. The remote computing devices 106 may beconfigured to interact with computing devices in the environment 101 invarious ways. For example, the remote computing devices 106 may beconfigured to facilitate streaming and/or controlling playback of mediacontent, such as audio, in the home environment 101.

In some implementations, the various playback devices, NMDs, and/orcontroller devices 110, 120, 130 may be communicatively coupled toremote computing devices associated with one or more VASes and at leastone remote computing device associated with a media content service(“MCS”). For instance, in the illustrated example of FIG. 1B, remotecomputing devices 106 a are associated with a first VAS 190, remotecomputing devices 106 b are associated with a second VAS 191, and remotecomputing devices 106 c are associated with an MCS 192. Although only atwo VASes 190, 191 and a single MCS 192 are shown in the example of FIG.1B for purposes of clarity, the MPS 100 may be coupled to additional,different VASes and/or MCSes. In some implementations, VASes may beoperated by one or more of AMAZON, GOOGLE, APPLE, MICROSOFT, SONOS orother voice assistant providers. In some implementations, MCSes may beoperated by one or more of SPOTIFY, PANDORA, AMAZON MUSIC, or othermedia content services.

The remote computing devices 106 further include remote computingdevices configured to perform certain operations, such as remotelyfacilitating media playback functions, managing device and system statusinformation, directing communications between the devices of the MPS 100and one or multiple VASes and/or MCSes, among other operations. In oneexample, the additional remote computing devices provide cloud serversfor one or more SONOS Wireless HiFi Systems.

In various implementations, one or more of the playback devices 110 maytake the form of or include an on-board (e.g., integrated) networkmicrophone device. For example, the playback devices 110 k, 110 h, 110c, 110 e, and 110 g include or are otherwise equipped with correspondingNMDs 120 e-i, respectively. A playback device that includes or isequipped with an NMD may be referred to herein interchangeably as aplayback device or an NMD unless indicated otherwise in the description.In some cases, one or more of the NMDs 120 may be a stand-alone device.For example, the NMDs 120 a and 120 b may be stand-alone devices. Astand-alone NMD may omit components and/or functionality that istypically included in a playback device, such as a speaker or relatedelectronics. For instance, in such cases, a stand-alone NMD may notproduce audio output or may produce limited audio output (e.g.,relatively low-quality audio output).

The various playback and network microphone devices 110 and 120 of theMPS 100 may each be associated with a unique name, which may be assignedto the respective devices by a user, such as during setup of one or moreof these devices. For instance, as shown in the illustrated example ofFIG. 1B, a user may assign the name “Bookcase” to playback device 110 ebecause it is physically situated on a bookcase. Some playback devicesmay be assigned names according to a zone or room, such as the playbackdevices 110 g, 110 d, 110 b, and 110 f, which are named “Bedroom,”“Dining Room,” “Kitchen,” and “Office,” respectively. Further, certainplayback devices may have functionally descriptive names. For example,the playback devices 110 k and 110 h are assigned the names “Right” and“Front,” respectively, because these two devices are configured toprovide specific audio channels during media playback in the zone of theDen 101 d (FIG. 1A). The playback device 110 c in the Patio may be namedportable because it is battery-powered and/or readily transportable todifferent areas of the environment 101. Other naming conventions arepossible.

As discussed above, an NMD may detect and process sound from itsenvironment, such as sound that includes background noise mixed withspeech spoken by a person in the NMD's vicinity. For example, as soundsare detected by the NMD in the environment, the NMD may process thedetected sound to determine if the sound includes speech that containsvoice input intended for the NMD and ultimately a particular VAS. Forexample, the NMD may identify whether speech includes a wake wordassociated with a particular VAS.

In the illustrated example of FIG. 1B, the NMDs 120 are configured tointeract with the first VAS 190 and/or the second VAS 191 over a networkvia the LAN 111 and the router 109. Interactions with the VASes 190 and191 may be initiated, for example, when an NMD identifies in thedetected sound a potential wake word. The identification causes awake-word event, which in turn causes the NMD to begin transmittingdetected-sound data to either the first VAS 190 or the second VAS 191,depending on the particular potential wake word identified in thedetected sound. In some implementations, the various local networkdevices and/or remote computing devices 106 of the MPS 100 may exchangevarious feedback, information, instructions, and/or related data withthe remote computing devices associated with the selected VAS. Suchexchanges may be related to or independent of transmitted messagescontaining voice inputs. In some embodiments, the remote computingdevice(s) and the media playback system 100 may exchange data viacommunication paths as described herein and/or using a metadata exchangechannel as described in U.S. application Ser. No. 15/438,749 filed Feb.21, 2017, and titled “Voice Control of a Media Playback System,” whichis herein incorporated by reference in its entirety.

Upon receiving the stream of sound data, the first VAS 190 determines ifthere is voice input in the streamed data from the NMD, and if so thefirst VAS 190 will also determine an underlying intent in the voiceinput. The first VAS 190 may next transmit a response back to the MPS100, which can include transmitting the response directly to the NMDthat caused the wake-word event. The response is typically based on theintent that the first VAS 190 determined was present in the voice input.As an example, in response to the first VAS 190 receiving a voice inputwith an utterance to “Play Hey Jude by The Beatles,” the first VAS 190may determine that the underlying intent of the voice input is toinitiate playback and further determine that intent of the voice inputis to play the particular song “Hey Jude.” After these determinations,the first VAS 190 may transmit a command to a particular MCS 192 toretrieve content (i.e., the song “Hey Jude”), and that MCS 192, in turn,provides (e.g., streams) this content directly to the MPS 100 orindirectly via the first VAS 190. In some implementations, the first VAS190 may transmit to the MPS 100 a command that causes the MPS 100 itselfto retrieve the content from the MCS 192. The second VAS 191 may operatesimilarly to the first VAS 190 when receiving a stream of sound data.

In certain implementations, NMDs may facilitate arbitration amongst oneanother when voice input is identified in speech detected by two or moreNMDs located within proximity of one another. For example, theNMD-equipped Bookcase playback device 110 e in the environment 101 (FIG.1A) is in relatively close proximity to the NMD 120 b, and both devices110 e and 120 b may at least sometimes detect the same sound. In suchcases, this may require arbitration as to which device is ultimatelyresponsible for providing detected-sound data to the remote VAS.Examples of arbitrating between NMDs may be found, for example, inpreviously referenced U.S. application Ser. No. 15/438,749.

In certain implementations, an NMD may be assigned to, or otherwiseassociated with, a designated or default playback device that may notinclude an NMD. For example, the NMD 120 a in the Dining Room 101 g(FIG. 1A) may be assigned to the Dining Room playback device 110 d,which is in relatively close proximity to the NMD 120 a. In practice, anNMD may direct an assigned playback device to play audio in response toa remote VAS receiving a voice input from the NMD to play the audio,which the NMD might have sent to the VAS in response to a user speakinga command to play a certain song, album, playlist, etc. Additionaldetails regarding assigning NMDs and playback devices as designated ordefault devices may be found, for example, in previously referenced U.S.patent application Ser. No. 15/438,749.

Further aspects relating to the different components of the example MPS100 and how the different components may interact to provide a user witha media experience may be found in the following sections. Whilediscussions herein may generally refer to the example MPS 100,technologies described herein are not limited to applications within,among other things, the home environment described above. For instance,the technologies described herein may be useful in other homeenvironment configurations comprising more or fewer of any of theplayback, network microphone, and/or controller devices 110, 120, 130.For example, the technologies herein may be utilized within anenvironment having a single playback device 110 and/or a single NMD 120.In some examples of such cases, the LAN 111 (FIG. 1B) may be eliminatedand the single playback device 110 and/or the single NMD 120 maycommunicate directly with the remote computing devices 106 a-c. In someembodiments, a telecommunication network (e.g., an LTE network, a 5Gnetwork, etc.) may communicate with the various playback, networkmicrophone, and/or controller devices 110, 120, 130 independent of aLAN.

b. Suitable Playback Devices

FIG. 1C is a block diagram of the playback device 110 a comprising aninput/output 111. The input/output 111 can include an analog I/O 111 a(e.g., one or more wires, cables, and/or other suitable communicationlinks configured to carry analog signals) and/or a digital I/O 111 b(e.g., one or more wires, cables, or other suitable communication linksconfigured to carry digital signals). In some embodiments, the analogI/O 111 a is an audio line-in input connection comprising, for example,an auto-detecting 3.5 mm audio line-in connection. In some embodiments,the digital I/O 111 b comprises a Sony/Philips Digital Interface Format(S/PDIF) communication interface and/or cable and/or a Toshiba Link(TOSLINK) cable. In some embodiments, the digital I/O 111 b comprises aHigh-Definition Multimedia Interface (HDMI) interface and/or cable. Insome embodiments, the digital I/O 111 b includes one or more wirelesscommunication links comprising, for example, a radio frequency (RF),infrared, WiFi, Bluetooth, or another suitable communication protocol.In certain embodiments, the analog I/O 111 a and the digital 111 bcomprise interfaces (e.g., ports, plugs, jacks) configured to receiveconnectors of cables transmitting analog and digital signals,respectively, without necessarily including cables.

The playback device 110 a, for example, can receive media content (e.g.,audio content comprising music and/or other sounds) from a local audiosource 105 via the input/output 111 (e.g., a cable, a wire, a PAN, aBluetooth connection, an ad hoc wired or wireless communication network,and/or another suitable communication link). The local audio source 105can comprise, for example, a mobile device (e.g., a smartphone, atablet, a laptop computer) or another suitable audio component (e.g., atelevision, a desktop computer, an amplifier, a phonograph, a Blu-rayplayer, a memory storing digital media files). In some aspects, thelocal audio source 105 includes local music libraries on a smartphone, acomputer, a networked-attached storage (NAS), and/or another suitabledevice configured to store media files. In certain embodiments, one ormore of the playback devices 110, NMDs 120, and/or control devices 130comprise the local audio source 105. In other embodiments, however, themedia playback system omits the local audio source 105 altogether. Insome embodiments, the playback device 110 a does not include aninput/output 111 and receives all audio content via the network 104.

The playback device 110 a further comprises electronics 112, a userinterface 113 (e.g., one or more buttons, knobs, dials, touch-sensitivesurfaces, displays, touchscreens), and one or more transducers 114(referred to hereinafter as “the transducers 114”). The electronics 112is configured to receive audio from an audio source (e.g., the localaudio source 105) via the input/output 111, one or more of the computingdevices 106 a-c via the network 104 (FIG. 1B)), amplify the receivedaudio, and output the amplified audio for playback via one or more ofthe transducers 114. In some embodiments, the playback device 110 aoptionally includes one or more microphones 115 (e.g., a singlemicrophone, a plurality of microphones, a microphone array) (hereinafterreferred to as “the microphones 115”). In certain embodiments, forexample, the playback device 110 a having one or more of the optionalmicrophones 115 can operate as an NMD configured to receive voice inputfrom a user and correspondingly perform one or more operations based onthe received voice input.

In the illustrated embodiment of FIG. 1C, the electronics 112 compriseone or more processors 112 a (referred to hereinafter as “the processors112 a”), memory 112 b, software components 112 c, a network interface112 d, one or more audio processing components 112 g (referred tohereinafter as “the audio components 112 g”), one or more audioamplifiers 112 h (referred to hereinafter as “the amplifiers 112 h”),and power 112 i (e.g., one or more power supplies, power cables, powerreceptacles, batteries, induction coils, Power-over Ethernet (POE)interfaces, and/or other suitable sources of electric power). In someembodiments, the electronics 112 optionally include one or more othercomponents 112 j (e.g., one or more sensors, video displays,touchscreens, battery charging bases).

The processors 112 a can comprise clock-driven computing component(s)configured to process data, and the memory 112 b can comprise acomputer-readable medium (e.g., a tangible, non-transitorycomputer-readable medium, data storage loaded with one or more of thesoftware components 112 c) configured to store instructions forperforming various operations and/or functions. The processors 112 a areconfigured to execute the instructions stored on the memory 112 b toperform one or more of the operations. The operations can include, forexample, causing the playback device 110 a to retrieve audio data froman audio source (e.g., one or more of the computing devices 106 a-c(FIG. 1B)), and/or another one of the playback devices 110. In someembodiments, the operations further include causing the playback device110 a to send audio data to another one of the playback devices 110 aand/or another device (e.g., one of the NMDs 120). Certain embodimentsinclude operations causing the playback device 110 a to pair withanother of the one or more playback devices 110 to enable amulti-channel audio environment (e.g., a stereo pair, a bonded zone).

The processors 112 a can be further configured to perform operationscausing the playback device 110 a to synchronize playback of audiocontent with another of the one or more playback devices 110. As thoseof ordinary skill in the art will appreciate, during synchronousplayback of audio content on a plurality of playback devices, a listenerwill preferably be unable to perceive time-delay differences betweenplayback of the audio content by the playback device 110 a and the otherone or more other playback devices 110. Additional details regardingaudio playback synchronization among playback devices can be found, forexample, in U.S. Pat. No. 8,234,395, which was incorporated by referenceabove.

In some embodiments, the memory 112 b is further configured to storedata associated with the playback device 110 a, such as one or morezones and/or zone groups of which the playback device 110 a is a member,audio sources accessible to the playback device 110 a, and/or a playbackqueue that the playback device 110 a (and/or another of the one or moreplayback devices) can be associated with. The stored data can compriseone or more state variables that are periodically updated and used todescribe a state of the playback device 110 a. The memory 112 b can alsoinclude data associated with a state of one or more of the other devices(e.g., the playback devices 110, NMDs 120, control devices 130) of themedia playback system 100. In some aspects, for example, the state datais shared during predetermined intervals of time (e.g., every 5 seconds,every 10 seconds, every 60 seconds) among at least a portion of thedevices of the media playback system 100, so that one or more of thedevices have the most recent data associated with the media playbacksystem 100.

The network interface 112 d is configured to facilitate a transmissionof data between the playback device 110 a and one or more other deviceson a data network such as, for example, the links 103 and/or the network104 (FIG. 1B). The network interface 112 d is configured to transmit andreceive data corresponding to media content (e.g., audio content, videocontent, text, photographs) and other signals (e.g., non-transitorysignals) comprising digital packet data including an Internet Protocol(IP)-based source address and/or an IP-based destination address. Thenetwork interface 112 d can parse the digital packet data such that theelectronics 112 properly receives and processes the data destined forthe playback device 110 a.

In the illustrated embodiment of FIG. 1C, the network interface 112 dcomprises one or more wireless interfaces 112 e (referred to hereinafteras “the wireless interface 112 e”). The wireless interface 112 e (e.g.,a suitable interface comprising one or more antennae) can be configuredto wirelessly communicate with one or more other devices (e.g., one ormore of the other playback devices 110, NMDs 120, and/or control devices130) that are communicatively coupled to the network 104 (FIG. 1B) inaccordance with a suitable wireless communication protocol (e.g., WiFi,Bluetooth, LTE). In some embodiments, the network interface 112 doptionally includes a wired interface 112 f (e.g., an interface orreceptacle configured to receive a network cable such as an Ethernet, aUSB-A, USB-C, and/or Thunderbolt cable) configured to communicate over awired connection with other devices in accordance with a suitable wiredcommunication protocol. In certain embodiments, the network interface112 d includes the wired interface 112 f and excludes the wirelessinterface 112 e. In some embodiments, the electronics 112 excludes thenetwork interface 112 d altogether and transmits and receives mediacontent and/or other data via another communication path (e.g., theinput/output 111).

The audio components 112 g are configured to process and/or filter datacomprising media content received by the electronics 112 (e.g., via theinput/output 111 and/or the network interface 112 d) to produce outputaudio signals. In some embodiments, the audio processing components 112g comprise, for example, one or more digital-to-analog converters (DAC),audio preprocessing components, audio enhancement components, a digitalsignal processors (DSPs), and/or other suitable audio processingcomponents, modules, circuits, etc. In certain embodiments, one or moreof the audio processing components 112 g can comprise one or moresubcomponents of the processors 112 a. In some embodiments, theelectronics 112 omits the audio processing components 112 g. In someaspects, for example, the processors 112 a execute instructions storedon the memory 112 b to perform audio processing operations to producethe output audio signals.

The amplifiers 112 h are configured to receive and amplify the audiooutput signals produced by the audio processing components 112 g and/orthe processors 112 a. The amplifiers 112 h can comprise electronicdevices and/or components configured to amplify audio signals to levelssufficient for driving one or more of the transducers 114. In someembodiments, for example, the amplifiers 112 h include one or moreswitching or class-D power amplifiers. In other embodiments, however,the amplifiers include one or more other types of power amplifiers(e.g., linear gain power amplifiers, class-A amplifiers, class-Bamplifiers, class-AB amplifiers, class-C amplifiers, class-D amplifiers,class-E amplifiers, class-F amplifiers, class-G and/or class Hamplifiers, and/or another suitable type of power amplifier). In certainembodiments, the amplifiers 112 h comprise a suitable combination of twoor more of the foregoing types of power amplifiers. Moreover, in someembodiments, individual ones of the amplifiers 112 h correspond toindividual ones of the transducers 114. In other embodiments, however,the electronics 112 includes a single one of the amplifiers 112 hconfigured to output amplified audio signals to a plurality of thetransducers 114. In some other embodiments, the electronics 112 omitsthe amplifiers 112 h.

The transducers 114 (e.g., one or more speakers and/or speaker drivers)receive the amplified audio signals from the amplifier 112 h and renderor output the amplified audio signals as sound (e.g., audible soundwaves having a frequency between about 20 Hertz (Hz) and 20 kilohertz(kHz)). In some embodiments, the transducers 114 can comprise a singletransducer. In other embodiments, however, the transducers 114 comprisea plurality of audio transducers. In some embodiments, the transducers114 comprise more than one type of transducer. For example, thetransducers 114 can include one or more low frequency transducers (e.g.,subwoofers, woofers), mid-range frequency transducers (e.g., mid-rangetransducers, mid-woofers), and one or more high frequency transducers(e.g., one or more tweeters). As used herein, “low frequency” cangenerally refer to audible frequencies below about 500 Hz, “mid-rangefrequency” can generally refer to audible frequencies between about 500Hz and about 2 kHz, and “high frequency” can generally refer to audiblefrequencies above 2 kHz. In certain embodiments, however, one or more ofthe transducers 114 comprise transducers that do not adhere to theforegoing frequency ranges. For example, one of the transducers 114 maycomprise a mid-woofer transducer configured to output sound atfrequencies between about 200 Hz and about 5 kHz.

By way of illustration, SONOS, Inc. presently offers (or has offered)for sale certain playback devices including, for example, a “SONOS ONE,”“PLAY:1,” “PLAY:3,” “PLAY:5,” “PLAYBAR,” “BEAM,” “PLAYBASE,”“CONNECT:AMP,” “CONNECT,” and “SUB.” Other suitable playback devices mayadditionally or alternatively be used to implement the playback devicesof example embodiments disclosed herein. Additionally, one of ordinaryskilled in the art will appreciate that a playback device is not limitedto the examples described herein or to SONOS product offerings. In someembodiments, for example, one or more playback devices 110 compriseswired or wireless headphones (e.g., over-the-ear headphones, on-earheadphones, in-ear earphones). In other embodiments, one or more of theplayback devices 110 comprise a docking station and/or an interfaceconfigured to interact with a docking station for personal mobile mediaplayback devices. In certain embodiments, a playback device may beintegral to another device or component such as a television, a lightingfixture, or some other device for indoor or outdoor use. In someembodiments, a playback device omits a user interface and/or one or moretransducers. For example, FIG. 1D is a block diagram of a playbackdevice 110 p comprising the input/output 111 and electronics 112 withoutthe user interface 113 or transducers 114.

FIG. 1E is a block diagram of a bonded playback device 110 q comprisingthe playback device 110 a (FIG. 1C) sonically bonded with the playbackdevice 110 i (e.g., a subwoofer) (FIG. 1A). In the illustratedembodiment, the playback devices 110 a and 110 i are separate ones ofthe playback devices 110 housed in separate enclosures. In someembodiments, however, the bonded playback device 110 q comprises asingle enclosure housing both the playback devices 110 a and 110 i. Thebonded playback device 110 q can be configured to process and reproducesound differently than an unbonded playback device (e.g., the playbackdevice 110 a of FIG. 1C) and/or paired or bonded playback devices (e.g.,the playback devices 110 l and 110 m of FIG. 1B). In some embodiments,for example, the playback device 110 a is full-range playback deviceconfigured to render low frequency, mid-range frequency, and highfrequency audio content, and the playback device 110 i is a subwooferconfigured to render low frequency audio content. In some aspects, theplayback device 110 a, when bonded with the first playback device, isconfigured to render only the mid-range and high frequency components ofa particular audio content, while the playback device 110 i renders thelow frequency component of the particular audio content. In someembodiments, the bonded playback device 110 q includes additionalplayback devices and/or another bonded playback device. Additionalplayback device embodiments are described in further detail below withrespect to FIGS. 2A-3D.

c. Suitable Network Microphone Devices (NMDs)

FIG. 1F is a block diagram of the NMD 120 a (FIGS. 1A and 1B). The NMD120 a includes one or more voice processing components 124 (hereinafter“the voice components 124”) and several components described withrespect to the playback device 110 a (FIG. 1C) including the processors112 a, the memory 112 b, and the microphones 115. The NMD 120 aoptionally comprises other components also included in the playbackdevice 110 a (FIG. 1C), such as the user interface 113 and/or thetransducers 114. In some embodiments, the NMD 120 a is configured as amedia playback device (e.g., one or more of the playback devices 110),and further includes, for example, one or more of the audio components112 g (FIG. 1C), the amplifiers 114, and/or other playback devicecomponents. In certain embodiments, the NMD 120 a comprises an Internetof Things (IoT) device such as, for example, a thermostat, alarm panel,fire and/or smoke detector, etc. In some embodiments, the NMD 120 acomprises the microphones 115, the voice processing 124, and only aportion of the components of the electronics 112 described above withrespect to FIG. 1B. In some aspects, for example, the NMD 120 a includesthe processor 112 a and the memory 112 b (FIG. 1B), while omitting oneor more other components of the electronics 112. In some embodiments,the NMD 120 a includes additional components (e.g., one or more sensors,cameras, thermometers, barometers, hygrometers).

In some embodiments, an NMD can be integrated into a playback device.FIG. 1G is a block diagram of a playback device 110 r comprising an NMD120 d. The playback device 110 r can comprise many or all of thecomponents of the playback device 110 a and further include themicrophones 115 and voice processing 124 (FIG. 1F). The playback device110 r optionally includes an integrated control device 130 c. Thecontrol device 130 c can comprise, for example, a user interface (e.g.,the user interface 113 of FIG. 1B) configured to receive user input(e.g., touch input, voice input) without a separate control device. Inother embodiments, however, the playback device 110 r receives commandsfrom another control device (e.g., the control device 130 a of FIG. 1B).Additional NMD embodiments are described in further detail below withrespect to FIGS. 3A-3F.

Referring again to FIG. 1F, the microphones 115 are configured toacquire, capture, and/or receive sound from an environment (e.g., theenvironment 101 of FIG. 1A) and/or a room in which the NMD 120 a ispositioned. The received sound can include, for example, vocalutterances, audio played back by the NMD 120 a and/or another playbackdevice, background voices, ambient sounds, etc. The microphones 115convert the received sound into electrical signals to produce microphonedata. The voice processing 124 receives and analyzes the microphone datato determine whether a voice input is present in the microphone data.The voice input can comprise, for example, an activation word followedby an utterance including a user request. As those of ordinary skill inthe art will appreciate, an activation word is a word or other audio cuethat signifying a user voice input. For instance, in querying theAMAZON® VAS, a user might speak the activation word “Alexa.” Otherexamples include “Ok, Google” for invoking the GOOGLE® VAS and “Hey,Siri” for invoking the APPLE® VAS.

After detecting the activation word, voice processing 124 monitors themicrophone data for an accompanying user request in the voice input. Theuser request may include, for example, a command to control athird-party device, such as a thermostat (e.g., NEST® thermostat), anillumination device (e.g., a PHILIPS HUE ® lighting device), or a mediaplayback device (e.g., a Sonos® playback device). For example, a usermight speak the activation word “Alexa” followed by the utterance “setthe thermostat to 68 degrees” to set a temperature in a home (e.g., theenvironment 101 of FIG. 1A). The user might speak the same activationword followed by the utterance “turn on the living room” to turn onillumination devices in a living room area of the home. The user maysimilarly speak an activation word followed by a request to play aparticular song, an album, or a playlist of music on a playback devicein the home. Additional description regarding receiving and processingvoice input data can be found in further detail below with respect toFIGS. 3A-3F.

d. Suitable Control Devices

FIG. 1H is a partially schematic diagram of the control device 130 a(FIGS. 1A and 1B). As used herein, the term “control device” can be usedinterchangeably with “controller” or “control system.” Among otherfeatures, the control device 130 a is configured to receive user inputrelated to the media playback system 100 and, in response, cause one ormore devices in the media playback system 100 to perform an action(s) oroperation(s) corresponding to the user input. In the illustratedembodiment, the control device 130 a comprises a smartphone (e.g., aniPhone™, an Android phone) on which media playback system controllerapplication software is installed. In some embodiments, the controldevice 130 a comprises, for example, a tablet (e.g., an iPad™), acomputer (e.g., a laptop computer, a desktop computer), and/or anothersuitable device (e.g., a television, an automobile audio head unit, anIoT device). In certain embodiments, the control device 130 a comprisesa dedicated controller for the media playback system 100. In otherembodiments, as described above with respect to FIG. 1G, the controldevice 130 a is integrated into another device in the media playbacksystem 100 (e.g., one more of the playback devices 110, NMDs 120, and/orother suitable devices configured to communicate over a network).

The control device 130 a includes electronics 132, a user interface 133,one or more speakers 134, and one or more microphones 135. Theelectronics 132 comprise one or more processors 132 a (referred tohereinafter as “the processors 132 a”), a memory 132 b, softwarecomponents 132 c, and a network interface 132 d. The processor 132 a canbe configured to perform functions relevant to facilitating user access,control, and configuration of the media playback system 100. The memory132 b can comprise data storage that can be loaded with one or more ofthe software components executable by the processor 302 to perform thosefunctions. The software components 132 c can comprise applicationsand/or other executable software configured to facilitate control of themedia playback system 100. The memory 112 b can be configured to store,for example, the software components 132 c, media playback systemcontroller application software, and/or other data associated with themedia playback system 100 and the user.

The network interface 132 d is configured to facilitate networkcommunications between the control device 130 a and one or more otherdevices in the media playback system 100, and/or one or more remotedevices. In some embodiments, the network interface 132 is configured tooperate according to one or more suitable communication industrystandards (e.g., infrared, radio, wired standards including IEEE 802.3,wireless standards including IEEE 802.11a, 802.11b, 802.11g, 802.11n,802.11ac, 802.15, 4G, LTE). The network interface 132 d can beconfigured, for example, to transmit data to and/or receive data fromthe playback devices 110, the NMDs 120, other ones of the controldevices 130, one of the computing devices 106 of FIG. 1B, devicescomprising one or more other media playback systems, etc. Thetransmitted and/or received data can include, for example, playbackdevice control commands, state variables, playback zone and/or zonegroup configurations. For instance, based on user input received at theuser interface 133, the network interface 132 d can transmit a playbackdevice control command (e.g., volume control, audio playback control,audio content selection) from the control device 304 to one or more ofthe playback devices 100. The network interface 132 d can also transmitand/or receive configuration changes such as, for example,adding/removing one or more playback devices 100 to/from a zone,adding/removing one or more zones to/from a zone group, forming a bondedor consolidated player, separating one or more playback devices from abonded or consolidated player, among others. Additional description ofzones and groups can be found below with respect to FIGS. 1I through 1M.

The user interface 133 is configured to receive user input and canfacilitate ‘control of the media playback system 100. The user interface133 includes media content art 133 a (e.g., album art, lyrics, videos),a playback status indicator 133 b (e.g., an elapsed and/or remainingtime indicator), media content information region 133 c, a playbackcontrol region 133 d, and a zone indicator 133 e. The media contentinformation region 133 c can include a display of relevant information(e.g., title, artist, album, genre, release year) about media contentcurrently playing and/or media content in a queue or playlist. Theplayback control region 133 d can include selectable (e.g., via touchinput and/or via a cursor or another suitable selector) icons to causeone or more playback devices in a selected playback zone or zone groupto perform playback actions such as, for example, play or pause, fastforward, rewind, skip to next, skip to previous, enter/exit shufflemode, enter/exit repeat mode, enter/exit cross fade mode, etc. Theplayback control region 133 d may also include selectable icons tomodify equalization settings, playback volume, and/or other suitableplayback actions. In the illustrated embodiment, the user interface 133comprises a display presented on a touch screen interface of asmartphone (e.g., an iPhone™, an Android phone). In some embodiments,however, user interfaces of varying formats, styles, and interactivesequences may alternatively be implemented on one or more networkdevices to provide comparable control access to a media playback system.

The one or more speakers 134 (e.g., one or more transducers) can beconfigured to output sound to the user of the control device 130 a. Insome embodiments, the one or more speakers comprise individualtransducers configured to correspondingly output low frequencies,mid-range frequencies, and/or high frequencies. In some aspects, forexample, the control device 130 a is configured as a playback device(e.g., one of the playback devices 110). Similarly, in some embodimentsthe control device 130 a is configured as an NMD (e.g., one of the NMDs120), receiving voice commands and other sounds via the one or moremicrophones 135.

The one or more microphones 135 can comprise, for example, one or morecondenser microphones, electret condenser microphones, dynamicmicrophones, and/or other suitable types of microphones or transducers.In some embodiments, two or more of the microphones 135 are arranged tocapture location information of an audio source (e.g., voice, audiblesound) and/or configured to facilitate filtering of background noise.Moreover, in certain embodiments, the control device 130 a is configuredto operate as playback device and an NMD. In other embodiments, however,the control device 130 a omits the one or more speakers 134 and/or theone or more microphones 135. For instance, the control device 130 a maycomprise a device (e.g., a thermostat, an IoT device, a network device)comprising a portion of the electronics 132 and the user interface 133(e.g., a touch screen) without any speakers or microphones. Additionalcontrol device embodiments are described in further detail below withrespect to FIGS. 4A-4D and 5.

e. Suitable Playback Device Configurations

FIGS. 1I through 1M show example configurations of playback devices inzones and zone groups. Referring first to FIG. 1M, in one example, asingle playback device may belong to a zone. For example, the playbackdevice 110 g in the second bedroom 101 c (FIG. 1A) may belong to Zone C.In some implementations described below, multiple playback devices maybe “bonded” to form a “bonded pair” which together form a single zone.For example, the playback device 110 l (e.g., a left playback device)can be bonded to the playback device 110 l (e.g., a left playbackdevice) to form Zone A. Bonded playback devices may have differentplayback responsibilities (e.g., channel responsibilities). In anotherimplementation described below, multiple playback devices may be mergedto form a single zone. For example, the playback device 110 h (e.g., afront playback device) may be merged with the playback device 110 i(e.g., a subwoofer), and the playback devices 110 j and 110 k (e.g.,left and right surround speakers, respectively) to form a single Zone D.In another example, the playback devices 110 g and 110 h can be bemerged to form a merged group or a zone group 108 b. The merged playbackdevices 110 g and 110 h may not be specifically assigned differentplayback responsibilities. That is, the merged playback devices 110 hand 110 i may, aside from playing audio content in synchrony, each playaudio content as they would if they were not merged.

Each zone in the media playback system 100 may be provided for controlas a single user interface (UI) entity. For example, Zone A may beprovided as a single entity named Master Bathroom. Zone B may beprovided as a single entity named Master Bedroom. Zone C may be providedas a single entity named Second Bedroom.

Playback devices that are bonded may have different playbackresponsibilities, such as responsibilities for certain audio channels.For example, as shown in FIG. 1-I, the playback devices 110 l and 110 mmay be bonded so as to produce or enhance a stereo effect of audiocontent. In this example, the playback device 1101 may be configured toplay a left channel audio component, while the playback device 110 k maybe configured to play a right channel audio component. In someimplementations, such stereo bonding may be referred to as “pairing.”

Additionally, bonded playback devices may have additional and/ordifferent respective speaker drivers. As shown in FIG. 1J, the playbackdevice 110 h named Front may be bonded with the playback device 110 inamed SUB. The Front device 110 h can be configured to render a range ofmid to high frequencies and the SUB device 110 i can be configuredrender low frequencies. When unbonded, however, the Front device 110 hcan be configured render a full range of frequencies. As anotherexample, FIG. 1K shows the Front and SUB devices 110 h and 110 i furtherbonded with Left and Right playback devices 110 j and 110 k,respectively. In some implementations, the Right and Left devices 110 jand 102 k can be configured to form surround or “satellite” channels ofa home theater system. The bonded playback devices 110 h, 110 i, 110 j,and 110 k may form a single Zone D (FIG. 1M).

Playback devices that are merged may not have assigned playbackresponsibilities, and may each render the full range of audio contentthe respective playback device is capable of. Nevertheless, mergeddevices may be represented as a single UI entity (i.e., a zone, asdiscussed above). For instance, the playback devices 110 a and 110 n themaster bathroom have the single UI entity of Zone A. In one embodiment,the playback devices 110 a and 110 n may each output the full range ofaudio content each respective playback devices 110 a and 110 n arecapable of, in synchrony.

In some embodiments, an NMD is bonded or merged with another device soas to form a zone. For example, the NMD 120 b may be bonded with theplayback device 110 e, which together form Zone F, named Living Room. Inother embodiments, a stand-alone network microphone device may be in azone by itself. In other embodiments, however, a stand-alone networkmicrophone device may not be associated with a zone. Additional detailsregarding associating network microphone devices and playback devices asdesignated or default devices may be found, for example, in previouslyreferenced U.S. patent application Ser. No. 15/438,749.

Zones of individual, bonded, and/or merged devices may be grouped toform a zone group. For example, referring to FIG. 1M, Zone A may begrouped with Zone B to form a zone group 108 a that includes the twozones. Similarly, Zone G may be grouped with Zone H to form the zonegroup 108 b. As another example, Zone A may be grouped with one or moreother Zones C-I. The Zones A-I may be grouped and ungrouped in numerousways. For example, three, four, five, or more (e.g., all) of the ZonesA-I may be grouped. When grouped, the zones of individual and/or bondedplayback devices may play back audio in synchrony with one another, asdescribed in previously referenced U.S. Pat. No. 8,234,395. Playbackdevices may be dynamically grouped and ungrouped to form new ordifferent groups that synchronously play back audio content.

In various implementations, the zones in an environment may be thedefault name of a zone within the group or a combination of the names ofthe zones within a zone group. For example, Zone Group 108 b can have beassigned a name such as “Dining+Kitchen”, as shown in FIG. 1M. In someembodiments, a zone group may be given a unique name selected by a user.

Certain data may be stored in a memory of a playback device (e.g., thememory 112 c of FIG. 1C) as one or more state variables that areperiodically updated and used to describe the state of a playback zone,the playback device(s), and/or a zone group associated therewith. Thememory may also include the data associated with the state of the otherdevices of the media system, and shared from time to time among thedevices so that one or more of the devices have the most recent dataassociated with the system.

In some embodiments, the memory may store instances of various variabletypes associated with the states. Variables instances may be stored withidentifiers (e.g., tags) corresponding to type. For example, certainidentifiers may be a first type “a1” to identify playback device(s) of azone, a second type “b1” to identify playback device(s) that may bebonded in the zone, and a third type “c1” to identify a zone group towhich the zone may belong. As a related example, identifiers associatedwith the second bedroom 101 c may indicate that the playback device isthe only playback device of the Zone C and not in a zone group.Identifiers associated with the Den may indicate that the Den is notgrouped with other zones but includes bonded playback devices 110 h-110k. Identifiers associated with the Dining Room may indicate that theDining Room is part of the Dining+Kitchen zone group 108 b and thatdevices 110 b and 110 d are grouped (FIG. 1L). Identifiers associatedwith the Kitchen may indicate the same or similar information by virtueof the Kitchen being part of the Dining+Kitchen zone group 108 b. Otherexample zone variables and identifiers are described below.

In yet another example, the media playback system 100 may variables oridentifiers representing other associations of zones and zone groups,such as identifiers associated with Areas, as shown in FIG. 1M. An areamay involve a cluster of zone groups and/or zones not within a zonegroup. For instance, FIG. 1M shows an Upper Area 109 a including ZonesA-D, and a Lower Area 109 b including Zones E-I. In one aspect, an Areamay be used to invoke a cluster of zone groups and/or zones that shareone or more zones and/or zone groups of another cluster. In anotheraspect, this differs from a zone group, which does not share a zone withanother zone group. Further examples of techniques for implementingAreas may be found, for example, in U.S. application Ser. No. 15/682,506filed Aug. 21, 2017 and titled “Room Association Based on Name,” andU.S. Pat. No. 8,483,853 filed Sep. 11, 2007, and titled “Controlling andmanipulating groupings in a multi-zone media system.” Each of theseapplications is incorporated herein by reference in its entirety. Insome embodiments, the media playback system 100 may not implement Areas,in which case the system may not store variables associated with Areas.

III. Example Systems and Devices

FIG. 2A is a front isometric view of a playback device 210 configured inaccordance with aspects of the disclosed technology. FIG. 2B is a frontisometric view of the playback device 210 without a grille 216 e. FIG.2C is an exploded view of the playback device 210. Referring to FIGS.2A-2C together, the playback device 210 comprises a housing 216 thatincludes an upper portion 216 a, a right or first side portion 216 b, alower portion 216 c, a left or second side portion 216 d, the grille 216e, and a rear portion 216 f. A plurality of fasteners 216 g (e.g., oneor more screws, rivets, clips) attaches a frame 216 h to the housing216. A cavity 216 j (FIG. 2C) in the housing 216 is configured toreceive the frame 216 h and electronics 212. The frame 216 h isconfigured to carry a plurality of transducers 214 (identifiedindividually in FIG. 2B as transducers 214 a-f). The electronics 212(e.g., the electronics 112 of FIG. 1C) is configured to receive audiocontent from an audio source and send electrical signals correspondingto the audio content to the transducers 214 for playback.

The transducers 214 are configured to receive the electrical signalsfrom the electronics 112, and further configured to convert the receivedelectrical signals into audible sound during playback. For instance, thetransducers 214 a-c (e.g., tweeters) can be configured to output highfrequency sound (e.g., sound waves having a frequency greater than about2 kHz). The transducers 214 d-f (e.g., mid-woofers, woofers, midrangespeakers) can be configured output sound at frequencies lower than thetransducers 214 a-c (e.g., sound waves having a frequency lower thanabout 2 kHz). In some embodiments, the playback device 210 includes anumber of transducers different than those illustrated in FIGS. 2A-2C.For example, as described in further detail below with respect to FIGS.3A-3C, the playback device 210 can include fewer than six transducers(e.g., one, two, three). In other embodiments, however, the playbackdevice 210 includes more than six transducers (e.g., nine, ten).Moreover, in some embodiments, all or a portion of the transducers 214are configured to operate as a phased array to desirably adjust (e.g.,narrow or widen) a radiation pattern of the transducers 214, therebyaltering a user's perception of the sound emitted from the playbackdevice 210.

In the illustrated embodiment of FIGS. 2A-2C, a filter 216 i is axiallyaligned with the transducer 214 b. The filter 216 i can be configured todesirably attenuate a predetermined range of frequencies that thetransducer 214 b outputs to improve sound quality and a perceived soundstage output collectively by the transducers 214. In some embodiments,however, the playback device 210 omits the filter 216 i. In otherembodiments, the playback device 210 includes one or more additionalfilters aligned with the transducers 214 b and/or at least another ofthe transducers 214.

FIGS. 3A and 3B are front and right isometric side views, respectively,of an NMD 320 configured in accordance with embodiments of the disclosedtechnology. FIG. 3C is an exploded view of the NMD 320. FIG. 3D is anenlarged view of a portion of FIG. 3B including a user interface 313 ofthe NMD 320. Referring first to FIGS. 3A-3C, the NMD 320 includes ahousing 316 comprising an upper portion 316 a, a lower portion 316 b andan intermediate portion 316 c (e.g., a grille). A plurality of ports,holes or apertures 316 d in the upper portion 316 a allow sound to passthrough to one or more microphones 315 (FIG. 3C) positioned within thehousing 316. The one or more microphones 316 are configured to receivedsound via the apertures 316 d and produce electrical signals based onthe received sound. In the illustrated embodiment, a frame 316 e (FIG.3C) of the housing 316 surrounds cavities 316 f and 316 g configured tohouse, respectively, a first transducer 314 a (e.g., a tweeter) and asecond transducer 314 b (e.g., a mid-woofer, a midrange speaker, awoofer). In other embodiments, however, the NMD 320 includes a singletransducer, or more than two (e.g., two, five, six) transducers. Incertain embodiments, the NMD 320 omits the transducers 314 a and 314 baltogether.

Electronics 312 (FIG. 3C) includes components configured to drive thetransducers 314 a and 314 b, and further configured to analyze audiodata corresponding to the electrical signals produced by the one or moremicrophones 315. In some embodiments, for example, the electronics 312comprises many or all of the components of the electronics 112 describedabove with respect to FIG. 1C. In certain embodiments, the electronics312 includes components described above with respect to Figure IF suchas, for example, the one or more processors 112 a, the memory 112 b, thesoftware components 112 c, the network interface 112 d, etc. In someembodiments, the electronics 312 includes additional suitable components(e.g., proximity or other sensors).

Referring to FIG. 3D, the user interface 313 includes a plurality ofcontrol surfaces (e.g., buttons, knobs, capacitive surfaces) including afirst control surface 313 a (e.g., a previous control), a second controlsurface 313 b (e.g., a next control), and a third control surface 313 c(e.g., a play and/or pause control). A fourth control surface 313 d isconfigured to receive touch input corresponding to activation anddeactivation of the one or microphones 315. A first indicator 313 e(e.g., one or more light emitting diodes (LEDs) or another suitableilluminator) can be configured to illuminate only when the one or moremicrophones 315 are activated. A second indicator 313 f (e.g., one ormore LEDs) can be configured to remain solid during normal operation andto blink or otherwise change from solid to indicate a detection of voiceactivity. In some embodiments, the user interface 313 includesadditional or fewer control surfaces and illuminators. In oneembodiment, for example, the user interface 313 includes the firstindicator 313 e, omitting the second indicator 313 f Moreover, incertain embodiments, the NMD 320 comprises a playback device and acontrol device, and the user interface 313 comprises the user interfaceof the control device .

Referring to FIGS. 3A-3D together, the NMD 320 is configured to receivevoice commands from one or more adjacent users via the one or moremicrophones 315. As described above with respect to FIG. 1B, the one ormore microphones 315 can acquire, capture, or record sound in a vicinity(e.g., a region within 10 m or less of the NMD 320) and transmitelectrical signals corresponding to the recorded sound to theelectronics 312. The electronics 312 can process the electrical signalsand can analyze the resulting audio data to determine a presence of oneor more voice commands (e.g., one or more activation words). In someembodiments, for example, after detection of one or more suitable voicecommands, the NMD 320 is configured to transmit a portion of therecorded audio data to another device and/or a remote server (e.g., oneor more of the computing devices 106 of FIG. 1B) for further analysis.The remote server can analyze the audio data, determine an appropriateaction based on the voice command, and transmit a message to the NMD 320to perform the appropriate action. For instance, a user may speak“Sonos, play Michael Jackson.” The NMD 320 can, via the one or moremicrophones 315, record the user's voice utterance, determine thepresence of a voice command, and transmit the audio data having thevoice command to a remote server (e.g., one or more of the remotecomputing devices 106 of FIG. 1B, one or more servers of a VAS and/oranother suitable service). The remote server can analyze the audio dataand determine an action corresponding to the command. The remote servercan then transmit a command to the NMD 320 to perform the determinedaction (e.g., play back audio content related to Michael Jackson). TheNMD 320 can receive the command and play back the audio content relatedto Michael Jackson from a media content source. As described above withrespect to FIG. 1B, suitable content sources can include a device orstorage communicatively coupled to the NMD 320 via a LAN (e.g., thenetwork 104 of FIG. 1B), a remote server (e.g., one or more of theremote computing devices 106 of FIG. 1B), etc. In certain embodiments,however, the NMD 320 determines and/or performs one or more actionscorresponding to the one or more voice commands without intervention orinvolvement of an external device, computer, or server.

FIG. 3E is a functional block diagram showing additional features of theNMD 320 in accordance with aspects of the disclosure. The NMD 320includes components configured to facilitate voice command captureincluding voice activity detector component(s) 312 k, beam formercomponents 312 l, acoustic echo cancellation (AEC) and/or self-soundsuppression components 312 m, activation word detector components 312 n,and voice/speech conversion components 312 o (e.g., voice-to-text andtext-to-voice). In the illustrated embodiment of FIG. 3E, the foregoingcomponents 312 k-312 o are shown as separate components. In someembodiments, however, one or more of the components 312 k-312 o aresubcomponents of the processors 112 a. As noted below, in someembodiments the NMD 320 can include activation word detector components312 n configured to detect multiple different activation wordsassociated with different VASes. For example, the activation worddetector components 312 can include a first activation-word detectorconfigured to detect one or more activation words associated with afirst VAS and a second activation-word detector configured to detect oneor more activation words associated with a second VAS. In at least someembodiments, the voice input can be separately processed by one or bothof these activation-word detectors. Upon detecting a first activationword using the first activation-word detector, the NMD 320 may suppressoperation of the second activation-word detector, for example by ceasingproviding voice input to the second activation-word detector for apredetermined time. This can help avoid interruption and cross-talkbetween different VASes.

The beamforming and self-sound suppression components 312 l and 312 mare configured to detect an audio signal and determine aspects of voiceinput represented in the detected audio signal, such as the direction,amplitude, frequency spectrum, etc. The voice activity detector activitycomponents 312 k are operably coupled with the beamforming and AECcomponents 312 l and 312 m and are configured to determine a directionand/or directions from which voice activity is likely to have occurredin the detected audio signal. Potential speech directions can beidentified by monitoring metrics which distinguish speech from othersounds. Such metrics can include, for example, energy within the speechband relative to background noise and entropy within the speech band,which is measure of spectral structure. As those of ordinary skill inthe art will appreciate, speech typically has a lower entropy than mostcommon background noise. The activation word detector components 312 nare configured to monitor and analyze received audio to determine if anyactivation words (e.g., wake words) are present in the received audio.The activation word detector components 312 n may analyze the receivedaudio using an activation word detection algorithm. If the activationword detector 312 n detects an activation word, the NMD 320 may processvoice input contained in the received audio. Example activation worddetection algorithms accept audio as input and provide an indication ofwhether an activation word is present in the audio. Many first- andthird-party activation word detection algorithms are known andcommercially available. For instance, operators of a voice service maymake their algorithm available for use in third-party devices.Alternatively, an algorithm may be trained to detect certain activationwords. In some embodiments, the activation word detector 312 n runsmultiple activation word detection algorithms on the received audiosimultaneously (or substantially simultaneously). As noted above,different voice services (e.g. AMAZON's ALEXA®, APPLE's SIRI®, orMICROSOFT's CORTANA®) can each use a different activation word forinvoking their respective voice service. To support multiple services,the activation word detector 312 n may run the received audio throughthe activation word detection algorithm for each supported voice servicein parallel.

The speech/text conversion components 312 o may facilitate processing byconverting speech in the voice input to text. In some embodiments, theelectronics 312 can include voice recognition software that is trainedto a particular user or a particular set of users associated with ahousehold. Such voice recognition software may implementvoice-processing algorithms that are tuned to specific voice profile(s).Tuning to specific voice profiles may require less computationallyintensive algorithms than traditional voice activity services, whichtypically sample from a broad base of users and diverse requests thatare not targeted to media playback systems.

FIG. 3F is a schematic diagram of an example voice input 328 captured bythe NMD 320 in accordance with aspects of the disclosure. The voiceinput 328 can include an activation word portion 328 a and a voiceutterance portion 328 b. In some embodiments, the activation word 557 acan be a known activation word, such as “Alexa,” which is associatedwith AMAZON's ALEXA®. In other embodiments, however, the voice input 328may not include a activation word. In some embodiments, a networkmicrophone device may output an audible and/or visible response upondetection of the activation word portion 328 a. In addition oralternately, an NMB may output an audible and/or visible response afterprocessing a voice input and/or a series of voice inputs.

The voice utterance portion 328 b may include, for example, one or morespoken commands (identified individually as a first command 328 c and asecond command 328 e) and one or more spoken keywords (identifiedindividually as a first keyword 328 d and a second keyword 328 f). Inone example, the first command 328 c can be a command to play music,such as a specific song, album, playlist, etc. In this example, thekeywords may be one or words identifying one or more zones in which themusic is to be played, such as the Living Room and the Dining Room shownin FIG. 1A. In some examples, the voice utterance portion 328 b caninclude other information, such as detected pauses (e.g., periods ofnon-speech) between words spoken by a user, as shown in FIG. 3F. Thepauses may demarcate the locations of separate commands, keywords, orother information spoke by the user within the voice utterance portion328 b.

In some embodiments, the media playback system 100 is configured totemporarily reduce the volume of audio content that it is playing whiledetecting the activation word portion 557 a. The media playback system100 may restore the volume after processing the voice input 328, asshown in FIG. 3F. Such a process can be referred to as ducking, examplesof which are disclosed in U.S. patent application Ser. No. 15/438,749,incorporated by reference herein in its entirety.

FIGS. 4A-4D are schematic diagrams of a control device 430 (e.g., thecontrol device 130 a of FIG. 1H, a smartphone, a tablet, a dedicatedcontrol device, an IoT device, and/or another suitable device) showingcorresponding user interface displays in various states of operation. Afirst user interface display 431 a (FIG. 4A) includes a display name 433a (i.e., “Rooms”). A selected group region 433 b displays audio contentinformation (e.g., artist name, track name, album art) of audio contentplayed back in the selected group and/or zone. Group regions 433 c and433 d display corresponding group and/or zone name, and audio contentinformation audio content played back or next in a playback queue of therespective group or zone. An audio content region 433 e includesinformation related to audio content in the selected group and/or zone(i.e., the group and/or zone indicated in the selected group region 433b). A lower display region 433 f is configured to receive touch input todisplay one or more other user interface displays. For example, if auser selects “Browse” in the lower display region 433 f, the controldevice 430 can be configured to output a second user interface display431 b (FIG. 4B) comprising a plurality of music services 433 g (e.g.,Spotify, Radio by Tunein, Apple Music, Pandora, Amazon, TV, local music,line-in) through which the user can browse and from which the user canselect media content for play back via one or more playback devices(e.g., one of the playback devices 110 of FIG. 1A). Alternatively, ifthe user selects “My Sonos” in the lower display region 433 f, thecontrol device 430 can be configured to output a third user interfacedisplay 431 c (FIG. 4C). A first media content region 433 h can includegraphical representations (e.g., album art) corresponding to individualalbums, stations, or playlists. A second media content region 433 i caninclude graphical representations (e.g., album art) corresponding toindividual songs, tracks, or other media content. If the user selectionsa graphical representation 433 j (FIG. 4C), the control device 430 canbe configured to begin play back of audio content corresponding to thegraphical representation 433 j and output a fourth user interfacedisplay 431 d fourth user interface display 431 d includes an enlargedversion of the graphical representation 433 j, media content information433 k (e.g., track name, artist, album), transport controls 433 m (e.g.,play, previous, next, pause, volume), and indication 433 n of thecurrently selected group and/or zone name.

FIG. 5 is a schematic diagram of a control device 530 (e.g., a laptopcomputer, a desktop computer). The control device 530 includestransducers 534, a microphone 535, and a camera 536. A user interface531 includes a transport control region 533 a, a playback status region533 b, a playback zone region 533 c, a playback queue region 533 d, anda media content source region 533 e. The transport control regioncomprises one or more controls for controlling media playback including,for example, volume, previous, play/pause, next, repeat, shuffle, trackposition, crossfade, equalization, etc. The audio content source region533 e includes a listing of one or more media content sources from whicha user can select media items for play back and/or adding to a playbackqueue.

The playback zone region 533 b can include representations of playbackzones within the media playback system 100 (FIGS. 1A and 1B). In someembodiments, the graphical representations of playback zones may beselectable to bring up additional selectable icons to manage orconfigure the playback zones in the media playback system, such as acreation of bonded zones, creation of zone groups, separation of zonegroups, renaming of zone groups, etc. In the illustrated embodiment, a“group” icon is provided within each of the graphical representations ofplayback zones. The “group” icon provided within a graphicalrepresentation of a particular zone may be selectable to bring upoptions to select one or more other zones in the media playback systemto be grouped with the particular zone. Once grouped, playback devicesin the zones that have been grouped with the particular zone can beconfigured to play audio content in synchrony with the playbackdevice(s) in the particular zone. Analogously, a “group” icon may beprovided within a graphical representation of a zone group. In theillustrated embodiment, the “group” icon may be selectable to bring upoptions to deselect one or more zones in the zone group to be removedfrom the zone group. In some embodiments, the control device 530includes other interactions and implementations for grouping andungrouping zones via the user interface 531. In certain embodiments, therepresentations of playback zones in the playback zone region 533 b canbe dynamically updated as playback zone or zone group configurations aremodified.

The playback status region 533 c includes graphical representations ofaudio content that is presently being played, previously played, orscheduled to play next in the selected playback zone or zone group. Theselected playback zone or zone group may be visually distinguished onthe user interface, such as within the playback zone region 533 b and/orthe playback queue region 533 d. The graphical representations mayinclude track title, artist name, album name, album year, track length,and other relevant information that may be useful for the user to knowwhen controlling the media playback system 100 via the user interface531.

The playback queue region 533 d includes graphical representations ofaudio content in a playback queue associated with the selected playbackzone or zone group. In some embodiments, each playback zone or zonegroup may be associated with a playback queue containing informationcorresponding to zero or more audio items for playback by the playbackzone or zone group. For instance, each audio item in the playback queuemay comprise a uniform resource identifier (URI), a uniform resourcelocator (URL) or some other identifier that may be used by a playbackdevice in the playback zone or zone group to find and/or retrieve theaudio item from a local audio content source or a networked audiocontent source, possibly for playback by the playback device. In someembodiments, for example, a playlist can be added to a playback queue,in which information corresponding to each audio item in the playlistmay be added to the playback queue. In some embodiments, audio items ina playback queue may be saved as a playlist. In certain embodiments, aplayback queue may be empty, or populated but “not in use” when theplayback zone or zone group is playing continuously streaming audiocontent, such as Internet radio that may continue to play untilotherwise stopped, rather than discrete audio items that have playbackdurations. In some embodiments, a playback queue can include Internetradio and/or other streaming audio content items and be “in use” whenthe playback zone or zone group is playing those items.

When playback zones or zone groups are “grouped” or “ungrouped,”playback queues associated with the affected playback zones or zonegroups may be cleared or re-associated. For example, if a first playbackzone including a first playback queue is grouped with a second playbackzone including a second playback queue, the established zone group mayhave an associated playback queue that is initially empty, that containsaudio items from the first playback queue (such as if the secondplayback zone was added to the first playback zone), that contains audioitems from the second playback queue (such as if the first playback zonewas added to the second playback zone), or a combination of audio itemsfrom both the first and second playback queues. Subsequently, if theestablished zone group is ungrouped, the resulting first playback zonemay be re-associated with the previous first playback queue, or beassociated with a new playback queue that is empty or contains audioitems from the playback queue associated with the established zone groupbefore the established zone group was ungrouped. Similarly, theresulting second playback zone may be re-associated with the previoussecond playback queue, or be associated with a new playback queue thatis empty, or contains audio items from the playback queue associatedwith the established zone group before the established zone group wasungrouped.

FIG. 6 is a message flow diagram illustrating data exchanges betweendevices of the media playback system 100 (FIGS. 1A-1M).

At step 650 a, the media playback system 100 receives an indication ofselected media content (e.g., one or more songs, albums, playlists,podcasts, videos, stations) via the control device 130 a. The selectedmedia content can comprise, for example, media items stored locally onor more devices (e.g., the audio source 105 of FIG. 1C) connected to themedia playback system and/or media items stored on one or more mediaservice servers (one or more of the remote computing devices 106 of FIG.1B). In response to receiving the indication of the selected mediacontent, the control device 130 a transmits a message 651 a to theplayback device 110 a (FIGS. 1A-1C) to add the selected media content toa playback queue on the playback device 110 a.

At step 650 b, the playback device 110 a receives the message 651 a andadds the selected media content to the playback queue for play back.

At step 650 c, the control device 130 a receives input corresponding toa command to play back the selected media content. In response toreceiving the input corresponding to the command to play back theselected media content, the control device 130 a transmits a message 651b to the playback device 110 a causing the playback device 110 a to playback the selected media content. In response to receiving the message651 b, the playback device 110 a transmits a message 651 c to thecomputing device 106 a requesting the selected media content. Thecomputing device 106 a, in response to receiving the message 651 c,transmits a message 651 d comprising data (e.g., audio data, video data,a URL, a URI) corresponding to the requested media content.

At step 650 d, the playback device 110 a receives the message 651 d withthe data corresponding to the requested media content and plays back theassociated media content.

At step 650 e, the playback device 110 a optionally causes one or moreother devices to play back the selected media content. In one example,the playback device 110 a is one of a bonded zone of two or more players(FIG. 1M). The playback device 110 a can receive the selected mediacontent and transmit all or a portion of the media content to otherdevices in the bonded zone. In another example, the playback device 110a is a coordinator of a group and is configured to transmit and receivetiming information from one or more other devices in the group. Theother one or more devices in the group can receive the selected mediacontent from the computing device 106 a, and begin playback of theselected media content in response to a message from the playback device110 a such that all of the devices in the group play back the selectedmedia content in synchrony.

III. Example Systems and Methods for Managing Multiple VASes

As discussed above, the MPS 100 may be configured to communicate withremote computing devices (e.g., cloud servers) associated with multipledifferent VASes. Although several examples are provided below withrespect to managing interactions between two VASes, in variousembodiments there may be additional VASes (e.g., three, four, five, six,or more VASes), and the interactions between these VASes can be managedusing the approaches described herein. In various embodiments, inresponse to detecting a particular activation word, the NMDs 120 maysend voice inputs over a network 102 to the remote computing device(s)associated with the first VAS 190 or the second VAS 191 (FIG. 1B). Insome embodiments, the one or more NMDs 120 only send the voice utteranceportion 328 b (FIG. 3F) of the voice input 328 to the remote computingdevice(s) associated with the VAS(es) (and not the activation wordportion 328 a). In some embodiments, the one or more NMDs 120 send boththe voice utterance portion 328 b and the activation word portion 328 a(FIG. 3F) to the remote computing device(s) associated with the VAS(es).

FIG. 7 is a message flow diagram illustrating various data exchangesbetween the MPS 100 and the remote computing devices. The media playbacksystem 100 captures a voice input via a network microphone device inblock 701 and detects an activation word in the voice input in block 703(e.g., via activation-detector components 312 n (FIG. 3E)). Once aparticular activation word has been detected (block 703), the MPS 100may suppress other activation word detector(s) in block 705. Forexample, if the activation word “Alexa” is detected in the voiceutterance in block 703, then the MPS 100 may suppress operation of asecond activation-word detector configured to detect a wake word such as“OK, Google.” This can reduce the likelihood of cross-talk betweendifferent VASes, by reducing or eliminating the risk that second VASmistakenly detects its activation word during a user's active dialoguesession with a first VAS. This can also preserve user privacy byeliminating the possibility of a user's voice input intended for one VASbeing transmitted to a different VAS.

In some embodiments, suppressing operation of the second activation-worddetector involves ceasing providing voice input to the secondactivation-word detector for a predetermined time, or until a userinteraction with the first VAS is deemed to be completed (e.g., after apredetermined time has elapsed since the last interaction—either atext-to-speech output from the first VAS or a user voice input to thefirst VAS). In some embodiments, suppression of the secondactivation-word detector can involve powering down the secondactivation-word detector to a low-power or no-power state for apredetermined time or until the user interaction with the first VAS isdeemed complete.

In some embodiments, the first activation-word detector can remainactive even after the first activation word has been detected and thevoice utterance has been transmitted to the first VAS, such that a usermay utter the first activation word to interrupt a current output orother activity being performed by the first VAS. For example, if a userasks Alexa to read a news flash briefing, and the playback device beginsto play back the text-to-speech (TTS) response from Alexa, a user mayinterrupt by speaking the activation word followed by a new command.Additional details regarding arbitrating between activation-worddetection and playback of content from a VAS are provided below withrespect to FIG. 9.

With continued reference to FIG. 7, in block 707, the media playbacksystem 100 may select an appropriate VAS based on particular activationword detected in block 703. If the second VAS 191 is selected, the mediaplayback system 100 may transmit one or messages (e.g., packets)containing the voice input to the second VAS 191 for processing. In theillustrated message flow, the first VAS 190 is selected in block 707.Upon this selection, the media playback system 100 transmits one or moremessages 709 (e.g., packets) containing the voice utterance (e.g., voiceutterance 328 b of FIG. 3F) to the first VAS 190. The media playbacksystem 100 may concurrently transmit other information to the first VAS190 with the message(s) 709. For example, the media playback system 100may transmit data over a metadata channel, as described in for example,in previously referenced U.S. application Ser. No. 15/438,749.

The first VAS 190 may process the voice input in the message(s) 709 todetermine intent (block 711). Based on the intent, the first VAS 190 maysend content 713 via messages (e.g., packets) to the media playbacksystem 100. In some instances, the response message(s) 713 may include apayload that directs one or more of the devices of the media playbacksystem 100 to execute instructions. For example, the instructions maydirect the media playback system 100 to play back media content, groupdevices, and/or perform other functions. In addition or alternatively,the first content 713 from the first VAS 190 may include a payload witha request for more information, such as in the case of multi-turncommands.

In some embodiments, the first content 713 can be assigned to differentcategories that are treated differently when arbitrating between contentreceived from different VASes. Examples of the first content 713 include(i) text-to-speech (TTS) responses (e.g., “it is currently 73 degrees”in response to a user's query regarding the temperature outside), (ii)alarms and timers (e.g., timers set by a user, calendar reminders,etc.), (iii) user broadcasts (e.g., in response to a user instructingAlexa to “tell everyone that dinner is ready,” all playback devices in ahousehold are instructed to play back “dinner is ready”), and (iv) othermedia content (e.g., news briefings, podcasts, streaming music, etc.).As used herein a TTS response can include instances in which a VASprovides a verbal response to a user input, query, request, etc. to beplayed back via a playback device. In some embodiments, the firstcontent 713 received from the first VAS 190 can include metadata, tags,or other identifiers regarding the type of content (e.g., a tagidentifying the first content 713 as TTS, as an alarm or timer, etc.).In other embodiments, the MPS 100 may inspect the first content 713 tootherwise determine to which category the first content 713 belongs.

At any point along this process, the second VAS 191 may transmit secondcontent 715 via messages (e.g., packets) to the media playback system100. This second content 715 may likewise include a payload that directsone or more of the devices of the media playback system 100 to executeinstructions such as playing back media content or performing otherfunctions. The second content 715, like the first content 713, can takea variety of forms including a TTS output, an alarm or timer, a userbroadcast, or other media content. Although the second content 715 hereis illustrated as being transmitted at a particular time in the flow, invarious embodiments the second content may be transmitted earlier (e.g.,prior to transmission of the first content 713 from the first VAS 190 tothe MPS 100) or later (e.g., after the MPS 100 has output a response inblock 719, for example by playing back the first content 713). In atleast some embodiments, the second content 715 is received duringplayback of the first content 713.

In block 717, the MPS 100 arbitrates between the first content 713received from the first VAS 190 and the second content 715 received fromthe second VAS 191. Following arbitration, the MPS 100 may output aresponse in block 719. The particular operations performed duringarbitration between the first and second content may depend on thecharacteristics of the first and second content, on the particular VASesselected, the relative times at which the first and second content arereceived, and other factors. For example, in some cases, the MPS 100 maysuppress the second content while playing back the first content. Asused herein, suppressing the second content can include delayingplayback of the second content, pausing playback of the second content(if playback is already in progress), and/or canceling or ceasingplayback of the second content altogether. In some cases, the MPS 100may suppress the first content while playing back the second content. Insome embodiments, suppressing playback of the first content can include“ducking” the first content while the second content is played backconcurrently with the first content.

When arbitrating between the first and second content in block 717, theMPS 100 may rely at least in part on the category of content (e.g., aTTS output, an alarm or timer, a user broadcast, or other media content)received from each VAS to determine how playback should be handled.Various examples are provided below, in which the MPS 100 arbitratesbetween the first content 713 and the second content 715, for example bydetermining which content to play back and which to suppress, as well aswhether to queue, duck, or cancel the suppressed content, etc.

In one example, the first content 713 is a TTS response, an alarm ortimer, or a user broadcast, and the second content 715 is a timer oralarm. In this instance, the second content 715 (timer or alarm) mayinterrupt and cancel or queue the first content 713. This permits auser's pre-set alarms or timers to be honored for their assigned times,regardless of the content currently being played back.

In another example, the first content 713 is a TTS response, an alarm ortimer, or a user broadcast, and the second content 715 is a userbroadcast. In this instance, the second content 715 (user broadcast) isqueued until after the first content is played back, without suppressingor otherwise interrupting the first content. This reflects thedetermination that, within a single household, it may be undesirable forone user's broadcast to interrupt playback of other content, such asanother user's active dialogue session with a VAS.

In an additional example, the first content 713 can be streaming media(e.g., music, a podcast, etc.), and the second content 715 can be a TTSresponse, a timer or alarm, or a user broadcast. In this case, the firstcontent 713 can be paused or “ducked” while the second content 715 isplayed back. After playback of the second content 715 is complete, thefirst content 713 can be unducked or unpaused and playback can continueas normal.

In yet another example, the first content 713 is other media such as apodcast, streaming music, etc., and the second content 715 is also ofthe same category, for example another podcast. In this case, the secondcontent 715 may replace the first content 713, and the first content 713can be deleted or canceled entirely. This reflects the assumption that auser wishes to override her previous selection of streaming content withthe new selection via the second VAS 191.

In still another example, the first content 713 is an alarm or timer,and the second content 715 is a TTS response that is received duringplayback of the alarm or timer. Here, the first content 713 (alarm ortimer) can be suppressed and the second content can be played back. Inthis instance, a user who has heard a portion of a timer or alarm likelydoes not wish the alarm or timer to resume after an intervening dialoguesession with a VAS has ended.

As a further example, the first content 713 can be a user broadcast, andthe second content 715 can be a TTS output, another user broadcast, oran alarm or timer. Here, the first content 713 can be suppressed (e.g.,queued or canceled) while the second content 715 (the TTS output, thealarm or timer, or other user broadcast) is played back.

Although the above examples describe optional arbitration determinationsmade by the MPS 100, various other configurations and determinations arepossible depending the desired operation of the MPS 100. For example, insome embodiments the MPS 100 may allow play back of any user broadcastsover any other currently played back content, while in anotherembodiment the MPS 100 may suppress playback of user broadcasts untilplayback of other media has completed. In various embodiments, the MPS100 may suppress playback of the second content while allowing playbackof the first content (or vice versa) based on the type of content, othercontent characteristics (e.g., playback length), the time at which therespective content is received at the MPS 100, particular user settingsor preferences, or any other factor.

In block 719, the MPS 100 outputs a response, for example by playingback the selected content as determined via the arbitration in block717. As noted above, this can include playing back the first content 713while suppressing (e.g., canceling or queuing) playback of the secondcontent 715, or alternatively this can include playing back the secondcontent 715 while suppressing (e.g., canceling, queuing, or ducking)playback of the first content 713. In some embodiments, the firstcontent 713 sent from the first VAS 190 may direct the media playbacksystem 100 to request media content, such as audio content, from themedia service(s) 192. In other embodiments, the MPS 100 may requestcontent independently from the first VAS 190. In either case, the MPS100 may exchange messages for receiving content, such as via a mediastream 721 comprising, e.g., audio content.

In block 723, the other activation word detector(s) can be re-enabled.For example, the MPS 100 may resume providing voice4 input to the otheractivation-word detector(s) after a predetermined time or after theuser's interaction with the first VAS 190 is deemed to be completed(e.g., after a predetermined time has elapsed since the lastinteraction—either a text-to-speech output from the first VAS or a uservoice input to the first VAS). Once the other activation worddetector(s) have been re-enabled, a user may initiate interaction withany available VAS by speaking the appropriate activation word or phrase.

FIG. 8 is an example method 800 for managing interactions between aplayback device and multiple VASes. Various embodiments of method 800include one or more operations, functions, and actions illustrated byblocks 802 through 812. Although the blocks are illustrated insequential order, these blocks may also be performed in parallel, and/orin a different order than the order disclosed and described herein.Also, the various blocks may be combined into fewer blocks, divided intoadditional blocks, and/or removed based upon a desired implementation.

Method 800 begins at block 802, which involves the playback devicecapturing audio input via one or more microphones as described above.The audio input can include a voice input, such as voice input 328depicted in FIG. 3F.

At block 804, method 800 involves the playback device using a firstactivation-word detector (e.g., activation word detector components 312n of FIG. 3E) to detect an activation word in the audio input. In someembodiments, the activation word can be one or more of (i) theactivation word “Alexa” corresponding to AMAZON voice services, (ii) theactivation word “Ok, Google” corresponding to GOOGLE voice services, or(iii) the activation word “Hey, Siri” corresponding to APPLE voiceservices.

Responsive to detecting the first activation word in the audio input inblock 804, the playback device transmits a voice utterance of the audioinput to a first VAS associated with the first activation word in block806. For example, if the detected activation word in block 804 is“Alexa,” then then in block 806 the playback device transmits the voiceutterance to one or more remote computing devices associated with AMAZONvoice services. As noted previously, in some embodiments, the playbackdevice only transmits the voice utterance portion 328 b (FIG. 3F) of thevoice input 328 to the remote computing device(s) associated with thefirst VAS (and not the activation word portion 328 a). In someembodiments, the playback device transmits both the voice utteranceportion 328 b and the activation word portion 328 a (FIG. 3F) to remotecomputing device(s) associated with the first VAS.

In block 808, the playback device receives first content from the firstVAS, and in block 810, the playback device receives second content froma second, different VAS. In block 810, the playback device arbitratesbetween the first content and the second content. As described abovewith respect to FIG. 7, this arbitration can depend at least in part onthe category of each content, for example (i) TTS responses, (ii) alarmsor timers, (iii) user broadcasts, and (iv) other media content (e.g.,news briefings, podcasts, streaming music, etc.). In some embodiments,an alarm or timer may interrupt any other active playback, whether a TTSresponse, another alarm or timer, a user broadcast, or other mediacontent. In some embodiments, a user announcement does not interrupt aTTS response, an alarm or timer, or another user announcement, butinstead is queued to be played back after the first content has beenplayed back completely. Various other rules and configurations forarbitration can be used to manage content received from two or moreVASes to enhance user experience, as described above.

In one outcome of the arbitration in block 812, the method 800 continuesin block 814 with playing back the first content while suppressing thesecond content. Such suppression can take the form of delaying playbackof the second content until after the first content has been played backor canceling playback of the second content altogether.

In an alternative outcome of the arbitration in block 812, the methodcontinues in block 816 with interrupting playback of the first contentwith playback of the second content. The first content, which isinterrupted, can either be canceled altogether, or can be queued forlater playback after the first content has been played back in itsentirety. In some embodiments, the first playback is “ducked” while thesecond content is played back. After the second content has been playedback completely, the first content can be “unducked”.

FIG. 9 is an example method 900 for managing activation-word detectionduring playback of content from a voice assistant service (VAS). Variousembodiments of method 900 include one or more operations, functions, andactions illustrated by blocks 902 through 918. Although the blocks areillustrated in sequential order, these blocks may also be performed inparallel, and/or in a different order than the order disclosed anddescribed herein. Also, the various blocks may be combined into fewerblocks, divided into additional blocks, and/or removed based upon adesired implementation.

Method 900 begins at block 902, with receiving first content from afirst VAS, and in block 904 the playback device plays back the firstcontent. In various embodiments, the first content can be an alarm ortimer, a user broadcast, a TTS output, or other media content.

At block 906, the playback device captures audio input via one or moremicrophones as described above. The audio input can include a voiceinput, such as voice input 328 depicted in FIG. 3F.

At block 908, the playback device arbitrates between the captured audioinput and the playback of the first content from the first VAS. Forexample, the playback device may permit a detected activation word inthe voice input to interrupt playback of the first device, or theplayback device may suppress operation of the activation word detectorso as not to interrupt playback of the first content. This arbitrationcan depend on the identity of the VAS that provides the first content,as well as the VAS associated with the potential activation word. Thisarbitration can also depend on the category of content being playedback, for example an alarm/timer, a user broadcast, a TTS output, orother media content.

In one example, if the first content is a TTS output from a first VAS,the playback device may suppress operation of any activation-worddetectors associated with any other VASes, while still permittingoperation of the activation-word detector associated with the first VAS.As a result, a user receiving a TTS output from Alexa may interrupt theoutput by speaking the “Alexa” activation word, but speaking the “OKGoogle” activation word would not interrupt playback of the TTS outputfrom Alexa.

In another example, if the first content is a user broadcast, theplayback device may continue to monitor audio input for activationword(s) during playback. If an activation word is detected for any VAS,then the user broadcast can be canceled or queued while the userinteracts with the selected VAS. In some embodiments, this interruptionof a user broadcast is permitted regardless of which VAS directed thebroadcast and which VAS is associated with the detected activation word.

In yet another example, if the first content is an alarm or timer, theplayback device may continue to monitor audio input for activationword(s) during playback. If an activation word is detected, then thetimer or alarm can be canceled or queued while the user interacts withthe selected VAS. In some embodiments, this interruption of a timer oralarm is permitted regardless of which VAS directed the timer or alarmand which VAS is associated with the detected activation word.

Various other rules and configurations are possible for arbitratingbetween playback of content from a first VAS and monitoring capturedaudio for potential activation word(s) of the first VAS and/or anyadditional VASes. For example, the playback device might permit a userto interrupt any content whatsoever if an activation word associatedwith a preferred VAS is spoken, while speaking an activation wordassociated with a non-preferred VAS may interrupt only certain content.

As one outcome following the arbitration in block 908, in block 910 theplayback device suppresses the activation-word detector during playbackof the first content. The activation-word detector can be suppressed byceasing to provide captured audio input to the activation-word detectoror by otherwise causing the activation-word detector to pause evaluationof audio input for a potential activation word. In this instance, theuser is not permitted to interrupt the playback of the first content,even using an activation word.

In the alternative outcome following the arbitration in block 908, inblock 912 the playback device enables the activation word detector, forexample by providing the audio input to the activation word detector ofthe playback device. At block 914, method 900 involves the playbackdevice using an activation-word detector (e.g., activation word detectorcomponents 312 n of FIG. 3E) to detect an activation word in the audioinput. In some embodiments, the activation word can be one or more of(i) the activation word “Alexa” corresponding to AMAZON voice services,(ii) the activation word “Ok, Google” corresponding to GOOGLE voiceservices, or (iii) the activation word “Hey, Siri” corresponding toAPPLE voice services.

Responsive to detecting the first activation word in the audio input inblock 914, the playback device interrupts playback of the first contentin block 916. In place of the content, an active dialogue or otherinteraction can proceed between the user and the VAS associated with theactivation word detected in block 914. In some embodiments, theinterruption can include canceling or queuing playback of the firstcontent. In some embodiments, interruption of the first content caninclude “ducking” the first content while a user interacts with the VASassociated with the activation word detected in block 914.

IV. Conclusion

The above discussions relating to playback devices, controller devices,playback zone configurations, voice assistant services, and mediacontent sources provide only some examples of operating environmentswithin which functions and methods described below may be implemented.Other operating environments and configurations of media playbacksystems, playback devices, and network devices not explicitly describedherein may also be applicable and suitable for implementation of thefunctions and methods.

The description above discloses, among other things, various examplesystems, methods, apparatus, and articles of manufacture including,among other components, firmware and/or software executed on hardware.It is understood that such examples are merely illustrative and shouldnot be considered as limiting. For example, it is contemplated that anyor all of the firmware, hardware, and/or software aspects or componentscan be embodied exclusively in hardware, exclusively in software,exclusively in firmware, or in any combination of hardware, software,and/or firmware. Accordingly, the examples provided are not the onlyways) to implement such systems, methods, apparatus, and/or articles ofmanufacture.

Additionally, references herein to “embodiment” means that a particularfeature, structure, or characteristic described in connection with theembodiment can be included in at least one example embodiment of aninvention. The appearances of this phrase in various places in thespecification are not necessarily all referring to the same embodiment,nor are separate or alternative embodiments mutually exclusive of otherembodiments. As such, the embodiments described herein, explicitly andimplicitly understood by one skilled in the art, can be combined withother embodiments.

The specification is presented largely in terms of illustrativeenvironments, systems, procedures, steps, logic blocks, processing, andother symbolic representations that directly or indirectly resemble theoperations of data processing devices coupled to networks. These processdescriptions and representations are typically used by those skilled inthe art to most effectively convey the substance of their work to othersskilled in the art. Numerous specific details are set forth to provide athorough understanding of the present disclosure. However, it isunderstood to those skilled in the art that certain embodiments of thepresent disclosure can be practiced without certain, specific details.In other instances, well known methods, procedures, components, andcircuitry have not been described in detail to avoid unnecessarilyobscuring aspects of the embodiments. Accordingly, the scope of thepresent disclosure is defined by the appended claims rather than theforegoing description of embodiments.

When any of the appended claims are read to cover a purely softwareand/or firmware implementation, at least one of the elements in at leastone example is hereby expressly defined to include a tangible,non-transitory medium such as a memory, DVD, CD, Blu-ray, and so on,storing the software and/or firmware.

1. A method comprising: receiving an audio input via one or moremicrophones of a playback device; detecting, via a first activation-worddetector of the playback device, a first activation word in the audioinput; after detecting the first activation word, transmitting, via theplayback device, a voice utterance of the audio input to a first voiceassistant service (VAS); receiving, from the first VAS, first content tobe played back via the playback device; receiving, from a second VASdifferent from the first VAS, second content to be played back via theplayback device; and determining whether to play back, via the playbackdevice, the first content while suppressing playback of the secondcontent or to play back the second content while suppressing the firstcontent.
 2. The method of claim 1, further comprising: before detectingthe first activation word, monitoring the audio input for the first andsecond activation words associated with the first and second VASes,respectively; in response to detecting the first activation word in theaudio input, suppressing monitoring the audio input for the secondactivation word.
 3. The method of claim 2, further comprising resumingmonitoring the audio input for the second activation word after playingback the first content.
 4. The method of claim 2, further comprisingresuming monitoring the audio input for the second activation word aftera predetermined time has elapsed following playing back the firstcontent. 5-20. (canceled)
 21. The method of claim 2, wherein suppressingmonitoring audio input for the second activation word comprises poweringdown a second activation-word detector to a low-power or no-power state.22. The method of claim 2, further comprising suppressing monitoringaudio input for the second activation word associated with the secondVAS while a user is interacting with the first VAS.
 23. The method ofclaim 1, wherein determining whether to play back the first content orthe second content while suppressing the other of the first or secondcontent is based at least on a characteristic of at least one of thefirst and second contents.
 24. The method of claim 23, wherein thecharacteristics of the first and second contents considered in thedetermining step comprises at least one of: the first content comprisesa text-to-speech output; or the second content comprises at leas one of:an alarm, a user broadcast, or a text-to-speech output.
 25. The methodof claim 1, wherein it is determined to play back the first contentwhile suppressing playback of the second content, wherein suppressingplayback of the second content comprises one of: canceling playback ofthe second content; or delaying playback of the second content.
 26. Themethod of claim 1, wherein it is determined to play back the secondcontent while suppressing playback of the first content.
 27. The methodof claim 26, further comprising determining to suppress the firstcontent and to play back the second content when the first and secondcontent have the same category of content.
 28. The method of claim 26,further comprising determining to suppress the first content and to playback the second content when the second content is one of: a timer or analarm.
 29. The method of claim 26, wherein suppressing playback of thefirst content comprises at least one of: canceling playback of the firstcontent; delaying playback of the first content; ducking the firstcontent while playing back the second content; or interrupting the firstcontent while playing back the second content.
 30. Tangible,non-transitory, computer-readable medium storing instructions executableby one or more processors to cause a playback device to perform themethod of claim
 1. 31. A playback device, comprising: one or moreprocessors; one or more microphones; one or more speakers; and thetangible, non-transitory, computer-readable medium of claim 30.